default_language_version:
    python: python3.11
repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.0.1
    hooks:
      - id: check-added-large-files
      - id: debug-statements
      - id: check-json
      - id: pretty-format-json
        args: ["--autofix", "--no-ensure-ascii", "--no-sort-keys"]

  - repo: https://github.com/asottile/seed-isort-config
    rev: v2.2.0
    hooks:
      - id: seed-isort-config

  - repo: https://github.com/PyCQA/isort
    rev: 5.12.0
    hooks:
      - id: isort

  - repo: https://github.com/ambv/black
    rev: 21.6b0
    hooks:
      - id: black
        additional_dependencies: ['click==8.0.4']

  - repo: https://github.com/pycqa/flake8
    rev: 3.9.2
    hooks:
      - id: flake8
        additional_dependencies:
          [
            "flake8-assertive",
            "flake8-comprehensions",
            "flake8-mutable",
            "flake8-print",
            "flake8-self",
            "pep8-naming",
          ]

  - repo: https://github.com/pre-commit/mirrors-mypy
    rev: v0.991
    hooks:
      - id: mypy
        additional_dependencies:
          - types-PyYAML

  - repo: https://github.com/hyroai/lint
    rev: 4373c9c07f94b3549b7a8521c5bb62b6698e383d
    hooks:
      - id: static-analysis

  - repo: https://github.com/codespell-project/codespell
    rev: v2.1.0
    hooks:
      - id: codespell
        entry: codespell --ignore-words=.codespell_ignore --quiet-level=4 --check-filenames
        exclude: \.(csv|json|txt)$

  - repo: https://github.com/myint/autoflake
    rev: v1.4
    hooks:
      - id: autoflake
        entry: autoflake -i --remove-all-unused-imports

  - repo: https://github.com/pre-commit/mirrors-prettier
    rev: v2.3.2
    hooks:
      - id: prettier
        files: \.(js|jsx|md)$
